Systems and methods to generate messages using machine learning on digital assets

ABSTRACT

Systems and methods of machine learning for digital assets and message creation are provided herein. The present disclosure includes mechanisms for receiving one or more assets that include textual content, performing machine learning on the one or more assets in order to determine relevant words, phrases, and statistics included in the textual content, and displaying segments of data on a graphical user interface that also includes an interface that is used to create a message using content of the segments of the textual content that have been extracted from the one or more assets.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/155,658, filed Oct. 9, 2018, entitled “Systems and Methods of MachineLearning for Digital Assets and Message Creation,” which is herebyincorporated herein by reference in its entirety, including allreferences and appendices cited therein, for all purposes, as if fullyset forth herein.

FIELD OF THE INVENTION

The present disclosure pertains to machine learning within the contextof digital asset processing and message creation. Systems and methodsdisclosed herein are configured to ingest digital assets from a varietyof sources, evaluate textual content of these digital assets, andautomate (either partially or entirely) the creation of messages fordistribution across one or more digital distribution platforms.

SUMMARY

A system of one or more computers can be configured to performparticular operations or actions by virtue of having software, firmware,hardware, or a combination of them installed on the system that inoperation cause or causes the system to perform the actions. One or morecomputer programs can be configured to perform particular operations oractions by virtue of including instructions that, when executed by dataprocessing apparatus, cause the apparatus to perform the actions. Onegeneral aspect includes a method, including: receiving one or moreassets that comprise textual content; performing machine learning on theone or more assets in order to determine relevant words, phrases, andstatistics included in the textual content, and generate a summary ofthe textual content; displaying on a graphical user interface: therelevant words based on frequency of occurrence in the one or moreassets, each of the relevant words being selectable; the phrases, eachof the phrases being selectable; the statistics, each of the statisticsbeing selectable; segments of the textual content that have beenextracted from the one or more assets based on selected ones of therelevant words, the phrases and the statistics; and an interface that isused to create a message using content from the segments of the textualcontent that have been extracted from the one or more assets. Otherembodiments of this aspect include corresponding computer systems,apparatus, and computer programs recorded on one or more computerstorage devices, each configured to perform the actions of the methods.

Another general aspect the method includes: performing machine learningon one or more assets having textual content in order to determinerelevant words, phrases, and statistics included in the textual content,and generate a summary of the textual content; and displaying, on agraphical user interface, segments of the textual content that have beenextracted from the one or more assets based on selected ones of therelevant words, the phrases and the statistics, and an interface that isused to create a message using content from the segments of the textualcontent that have been extracted from the one or more assets.

One general aspect includes a system, including: an asset analyzermodule configured to receive one or more assets that comprise textualcontent; a machine learning module configured to perform machinelearning on the one or more assets in order to determine relevant words,phrases, and statistics included in the textual content, and generate asummary of the textual content; a graphical user interface moduleconfigured to display on a graphical user interface: the relevant wordsbased on frequency of occurrence in the one or more assets, each of therelevant words being selectable; the phrases, each of the phrases beingselectable; the statistics, each of the statistics being selectable;segments of the textual content that have been extracted from the one ormore assets based on selected ones of the relevant words, the phrasesand the statistics; and an interface that is used to create a messageusing content from the segments of the textual content that have beenextracted from the one or more assets.

Other embodiments of this aspect include corresponding computer methodsand computer programs recorded on one or more computer storage devices,each configured to perform the actions of the methods.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, where like reference numerals refer toidentical or functionally similar elements throughout the separateviews, together with the detailed description below, are incorporated inand form part of the specification, and serve to further illustrateembodiments of concepts that include the claimed disclosure, and explainvarious principles and advantages of those embodiments.

The methods and systems disclosed herein have been represented whereappropriate by conventional symbols in the drawings, showing only thosespecific details that are pertinent to understanding the embodiments ofthe present disclosure so as not to obscure the disclosure with detailsthat will be readily apparent to those of ordinary skill in the arthaving the benefit of the description herein.

FIG. 1 is a schematic diagram of a system for use in practicing aspectsof the present disclosure.

FIG. 2 is a graphical user interface that allows a message author toinput or select an input asset.

FIGS. 3A-3E collectively illustrate the use of a graphical userinterface that displays various content extracted from input asset(s)and the automated (either partial or complete) authoring of messagesbased on the content extracted from input asset(s).

FIG. 4 is a flowchart of an example method of the present disclosure.

FIG. 5 is a flowchart of another example method of the presentdisclosure.

FIG. 6 is a schematic diagram of an example computing system that may beused to implement embodiments disclosed in accordance with the presentdisclosure.

DETAILED DESCRIPTION

While this technology is susceptible of embodiment in many differentforms, there is shown in the drawings and will herein be described indetail several specific embodiments with the understanding that thepresent disclosure is to be considered as an exemplification of theprinciples of the technology and is not intended to limit the technologyto the embodiments illustrated.

As noted above, the present disclosure is directed to systems andmethods that are configured to ingest digital assets from a variety ofsources, evaluate textual content of these digital assets, and automate(either partially or entirely) the creation of messages for distributionacross one or more digital distribution platforms.

In general, the systems and methods herein provide an artificialintelligence (AI) or machine learning driven content creation assistant(referred to generally as a copyrighting assistant) that enables theautomated creation of messages for distribution across one or morechannels of communication. Example communications channels include, butare not limited to, social networks (such as Twitter™, Facebook™, and soforth), email, blogs, and webpage—just to name a few.

The systems and methods disclosed herein provide a technical solution toa problem within the field of automated content creation. To be sure,content creation is a cumbersome and time consuming process. Oftentimes, messages for use on social media or other mediums are createdfrom more comprehensive digital assets such as technical papers orwebsite content. As such, the content of messages created from thesemore comprehensive digital assets are controlled by the subjectivebiases of the author. That is, the author uses their best judgement inorder to create compelling content for their messages. This isespecially difficult when the content author is not a subject matterexpert relative to the content in the comprehensive digital asset(s).

The systems and methods herein overcome these subjective drawbacks byincorporating machine learning/AI capabilities that can utilize aruleset or model in order to pre-process comprehensive digital assets(referred to generally as input assets) and automatically convert(either partly created or wholly) those assets into messages that can beautomatically distributed to one or more publishing targets.

The systems and methods enable the generation of relevant content andvariations thereof without requiring an author to possess the fullsubject matter expertise of the author who created the comprehensivedigital assets. This allows for efficient and quick creation of relevantcontent that is distributed to various channels and/or to variousaudiences. These and other advantages of the present disclosure areprovided in greater detail infra with reference to the collectivedrawings.

FIG. 1 is a schematic diagram of an example system 100 that can beutilized to practice aspects of the present disclosure. The system 100generally comprises an asset analyzer module 102, a machine learningmodule 104, and a graphical user interface module 106. It will beunderstood that the modules of the system 100 can be aggregated into asingle physical or virtual machine in some embodiments, such as aserver. In other embodiments, the modules of the system 100 can bedistributed across a plurality of physical or virtual machines, such asa cloud.

In some embodiments, the system 100 is configured for interaction withone or more client devices, such as client device 108. The client device108 can include any end-user computing device such as a laptop orsmartphone. The client device 108 can interact with the system 100 in aserver/client relationship, in some embodiments, through the use ofgraphical user interfaces (GUIs) as disclosed herein. The GUIs can bedelivered through an application that resides and executes on the clientdevice 108. Alternatively, the GUIs can be accessed by the client device108 through a web-based form provided by the graphical user interfacemodule 106.

As noted above, the system 100 is configured generally to utilizeAI/machine learning in order to allow an author to partially orcompletely automate the creation of message content based on one or moreinput assets. For example, if a company creates a technical documentthat describes a new offering or service, the system 100 can ingest thatinput asset 110 and perform a variety of machine learning processes onthat input asset 110 in order to convert that input asset 110 into oneor more messages 112 that are then published to one or more publishingtargets 114.

Content of one or more messages 112 created by the system 100 is createdfrom content extracted from an input asset 110 and processed by thesystem 100 using machine learning. The input asset 110 is ingested andanalyzed by the system 100 to extract information such as key topics(words/phrases), facts, statistics, quotes, and so forth. Theseextracted data are used to pre-populate the content of the one or moremessages 112 in some embodiments. In other embodiments, the informationextracted from the input asset 110 can be placed into various windows ofa GUI that a message author uses to create the one or more messages 112.To be sure, in some embodiments, the system 100 can evaluate more thanone input asset 110 at a time using machine learning.

Referring now collectively to FIGS. 1 and 2 , in more detail, thegraphical user interface module 106 can be executed to generate a GUI200 that allows a message author to input or select the input asset 110,which in this example includes a technical document titled “GlobalContent Operating Manual” reflected in the name dialogue area. Documentsare selected using a button 202. The button 202 allows the messageauthor to search and select documents either locally (on the clientdevice 108) or remotely. The GUI 200 allows the user to select one ormore channels 204 for distribution of any messages generated in responseto the processing of the input asset 110 by the system 100.

In general the input asset 110 (e.g., one or more assets) comprisestextual content. The input asset 110 or assets can be obtained from athird party resource 116 (see FIG. 1 ). In some instances, a third partyresource can include any repository of assets having content that isrelated to the content included in the input asset 110. That is, a usercan select the input asset 110. The machine learning module 104 canprocess textual content of the input asset 110 and use content extractedfrom the input asset 110 such as keywords/phases, statistics, facts,quotes, and other data as the basis for searching the Internet oranother third party document repository for additional input asset(s)that have content which is similar in subject matter to the input asset110 selected by the user.

In one specific example, content extracted from the input asset 110selected by the user can be used as a query that is searched against theone or more publishing targets 114 that will ultimately receive themessage created through the system 100. For example, content such askeywords extracted from the Global Content Operating Manual can be usedas the basis of a query that is executed against a social network wherea message will eventually be published. The asset analyzer module 102 ofthe system 100 can utilize an application programming interface (API) toconnect to the third party resource 116 (or one or more publishingtargets 114), which in this example is a social network. Results fromthe query can include content found on the social network thatcorresponds to the keywords extracted from the input asset 110. Thecontent obtained from the social network by the asset analyzer module102 can be combined with the input asset 110 and analyzed collectivelyby the machine learning module 104. In sum, the corpus of content thatis used to generate messages by the system 100 can be extended bysearching various third party resources, some of which can include thechannels (e.g., publishing targets) where messages are published by thesystem 100.

Stated otherwise, the system 100 can utilize an application programminginterface (or equivalent) to search social networks (or other thirdparty sites) for third party content that matches the one or more inputassets. The system 100 will effectively incorporate the third partycontent with the one or more input assets during the machine learningsuch that the relevant words, phrases, and statistics (or other types ofextracted content) are based on both the one or more input assets andthe third party content in combination.

The textual content extracted from the one or more input assets (whetherselected by the user and/or found in a search) is ultimately processedusing the machine learning module 104. In more detail, the machinelearning module 104 is configured to perform AI processing on the one ormore assets in order to determine content that is indicative of subjectmatter included in the one or more assets. In some embodiments, themachine learning module 104 can utilize a ruleset in order to definetypes of content that are located and/or extracted from within the oneor more assets.

In some embodiments, the machine learning module 104 is utilized todetermine content such as relevant words, phrases, quotes facts,statistics included in the textual content of the machine learningmodule 104. In various embodiments, the machine learning module 104 cangenerate a summary of the textual content included in each discreteinput asset.

In one embodiment, relevant words or phrases can be determined from afrequency or word count. That is, if a word is repeated numerous timesin a document it is likely to be important and indicative of the subjectmatter of the input asset. The machine learning module 104 can excludenonce words such as articles and other repetitive content that are notlikely to be indicative of the subject matter included in the asset(s).

Other rules can be used that search for quotations or facts/statisticsthat are determined by looking for numerical characters in combinationwith certain words or phrases or even symbols. Using a sentence “45% ofusers experienced latency”, the number 45 is located near a phrase“users experienced.” Thus it can be inferred that the number incombination with phrase is relevant as a statistic. The presence of the% symbol also adds weight to this inference. Additional examples ofcontent extracted from the example input asset are illustrated anddescribed in greater detail with respect to FIGS. 3A-3E, each of whichis disclosed infra.

Once the various types of content have been extracted from the one ormore assets, the graphical user interface module 106 is then executed toprovide a copyrighting assistant interface (herein after GUI 300) asillustrated in FIG. 3A. Generally, the GUI 300 generally comprisesvarious windows that include extracted content and/or mechanisms forselecting and otherwise interacting with said extracted content.

In one embodiment, the GUI 300 includes a first window 302, a secondwindow 304, a third window 306, a fourth window 308, a fifth window 310,and a sixth window 312. Each of these windows and their correspondingextracted content are disclosed in greater detail below.

In general, relevant words and phrases are displayed in the first window302 of the GUI 300 and other specific phrases such as quotes aredisplayed in the second window 304 of the GUI 300. In some embodiments,the keywords displayed in the first window 302 are extracted from theone or more input assets and are displayed according to a frequency ofoccurrence in the underlying assets. Thus, in the Global ContentOperating Manual, the words “content” and “companies” are found morefrequently than any other words. Instead of displaying the keywords andphrases in an ordered list, such content can be displayed as a wordcloud, with more frequently occurring words/phrases being larger in fontsize or color. Each of the items listed in the first window 302 areselectable using, for example a check box 314. Moreover, based onmachine learning, one or more of the items listed in the first window302 can be associated with an icon. For example, a relevant word of“Forrester” that is indicative of a person's name is provided with ahuman icon. This name appears frequently in the input asset.

The quotes located in the second window 304 are also each associatedwith a selectable check box. These quotes include individual,stand-alone phrases that reflect valuable textual information includedin the underlying assets. Often, these quotes comprise one or more ofthe keywords/phrases found in the first window 302. In some embodiments,the quotes included in the second window 304 are updated in real-timebased on the selections of keywords/phrases in the first window 302.

In some embodiments, statistics are displayed in the third window 306.The statistics include content that is indicative of or associated witha numerical value, but the items listed in the third window 306 includeadditional characters in a string in which the numerical value is found.As noted above, the machine learning module 104 includes rules thatidentify words or phrases that are indicative of a statistic. Once foundthe graphical user interface module 106 can list strings of words, suchas sentences or sub-sentence phrases that include the statistics. Therelevant statistic of a sentence or sub-sentence phrase can be set offin bold. Moreover, each of the items in the list of third window 306 isselectable through a check box.

Various embodiments include the fourth window 308 that includes segmentsof content. As noted above, the content displayed in the various windows302-306 is selectable by a user of the GUI 300. The segments of contentdisplayed in the fourth window 308 are populated in response to theitems selected from one or more of the windows 302-306. That is, theuser can select which items from the various windows are of interest.Once selected, the system 100 (see FIG. 1 ) will populate the fourthwindow 308 with segments of content as illustrated in FIG. 3B, whichwill be described in greater detail below.

Generally, the GUI 300 also includes a smart channel editor 316 in thefifth window 310. The smart channel editor 316 is a mechanism configuredto allow a user to compose a message (either in whole or in part) basedon the content provided in the various windows of the GUI 300. Users canbase the content of the message on segments of content displayed in thefourth window 308. In some instances, the message that is composed iscreated using the machine learning module 104.

For example, in FIG. 3B, the phrase “a global content operating model”is selected by the user from the first window 302. This selection causesthe system 100 (through cooperation of the machine learning module 104and the graphical user interface module 106) to display segments ofcontent 318 in the fourth window 308. The segments of content 318include quotations of content extracted from the underlying input assetthat correspond to the selection of the user. This action fine-tunes themost relevant content found in the underlying input asset that is ofinterest to the user. The segments of content 318 are listed in order ofrelevancy to the items selected by the user. That is, the machinelearning module 104 can generate a relevancy score for each segmentselected for the fourth window 308. In some embodiments, the relevancyscore is represented as a series of dots placed by a segment. A segmenthaving all five dots darkened is a highly relevant (high relevancyscore) segment. Again, the relevancy score is related to how wellcontent extracted from the input asset(s) matches the items selected bythe user. For example, the segment of “A global content operating modelcan alleviate challenges and provide clear benefits” was found to behighly relevant to the select item of “a global content operating model”selected by the user from the first window 302.

In some embodiments, the content of the message is populated, in wholeor in part, by the machine learning module 104 (see FIG. 1 ) of thesystem 100 based on the selections of the user. That is, once the userhas selected items from any of the various windows, the machine learningmodule 104 can pre-populate the smart channel editor 316 with textualcontent from the segments of content 318. As a default setting, themachine learning module 104 can select the most relevant item in thesegments of content 318 as an initial message. In some embodiments,rather than copying content verbatim from the segments of content 318,the machine learning module 104 can also apply natural languageprocessing rules to convert content in a segment to a morelinguistically appropriate format. For example, if the content in asegment is a fragment or run-on, the machine learning module 104 canutilize natural language processing rules to convert such content into awell-formed sentence. The machine learning module 104 could also usenative knowledge regarding the site to which the message will bepublished in order to reformat the segment. For example, if the site towhich a message is published is a social network with a character limit,the machine learning module 104 can truncate or reword a segment tocomply with that character limit.

In sum, the machine learning module 104 is configured to automaticallygenerate a message through use of a message creation ruleset. Thismessage creation ruleset can define format, layout, style, linguistic,or other parameters of an automated message that define how relevantcontent from the input asset(s) are converted into a message.

The automation of message creation from more comprehensive input assetsallows for rapid dissemination of the messages into social media orother platforms that benefit from rapid or frequent content sharing inorder to drive customer or viewer engagement without the use of humaninput (or very limited human input). In some embodiments, the system 100populates automatically generated messages to a queue for subsequentdistribution (see FIG. 3E). Thus, a human may only be required to reviewAI generated messages in the queue before publishing. If messages areedited prior to publishing, the message can be processed by the machinelearning module 104 in order to update the message creation ruleset inorder to produce more suitable messages in the future. Thus, the machinelearning module 104 learns from user feedback and edits in order toimprove the future format or content of messages.

Also, part of the message creation ruleset used by the machine learningmodule 104 can include message scheduling which determines how oftenmessages are created and disseminated by the system 100. This type ofinformation can be determined through analysis of trends of competitorsand other suitable information sources or corporate policies.

In some embodiments, the machine learning module 104 can not onlygenerate segments of interest, but the machine learning module 104 canalso create ancillary or collateral content for use in a message. Thesecan also be based on native knowledge regarding the site to which themessage will be published. For example, the machine learning module 104can create hashtags 320 based on the relevant segments provided in thefourth window 308.

In some embodiments, the sixth window 312 of the GUI 300 comprises asummary of the input assets (user selected and/or third party content)that provide a user with a summary of the subject matter included in theinput assets. This allows a user with limited domain knowledge toeffectively create messages. This can also assist a user who isreviewing automatically generated AI messages produced by the system100.

In various embodiments, the GUI 300 can also include a seventh window322 that identifies the input assets used to generate the contentincluded in the GUI 300. The user can remove or add input assets asdesired through this seventh window 322.

FIG. 3C illustrates the GUI 300 and specifically the use of the smartchannel editor 316. The smart channel editor 316 includes a text inputbox 324 that can be filled with content either by the system 100 or by auser. For example, the text input box 324 can be filled with messagecontent 326. As the text input box 324 box is filled with messagecontent, the system 100 (and specifically the machine learning module104) generates a real-time relevancy score that indicates how relevantthe message content is relative to the items selected by the user fromthe various windows of the GUI 300 (note that the items selected in FIG.3C vary from those selected in FIGS. 3A-3B). FIG. 3C illustrates themessage content as it is being created with a relatively mid-rangerelevancy score as notated or illustrated by way of a relevancy progressbar 328. This is in contrast with the completed message content 330illustrated in FIG. 3D. As noted above, the completed message content330 illustrated in FIG. 3D includes an AI generated hashtag 320. Thiscompleted message content 330 is added to a queue 332 as illustrated inFIG. 3E.

FIG. 4 is a flowchart of an example method of the present disclosure.The method includes a step 402 of receiving one or more assets thatcomprise textual content. Again, this can include assets identified by auser and/or assets obtained from a third party resource as well. Next,the method includes a step 404 of performing machine learning on the oneor more assets in order to determine relevant words, phrases, andstatistics included in the textual content. The method can also includea step 406 of generating a summary of the textual content.

In various embodiments, the method can include a step 408 of displayingon a graphical user interface the relevant words found in the textualcontent based on frequency of occurrence. To be sure each of therelevant words is selectable by the user. Next, the method includes astep 410 of displaying on the graphical user interface the phrases foundin the textual content. Again, each of the phrases is selectable. Thephrases can include quotes in some embodiments.

In one or more embodiments, the method includes a step 412 of displayingon the graphical user interface the statistics selected from the textualcontent. The statistics can be displayed in the context of the sentenceor word string in which they appear in the textual content.

The method includes a step 414 of displaying on the graphical userinterface the segments of the textual content that have been extractedfrom the one or more assets based on selected ones of the relevantwords, the phrases and the statistics.

As noted above, the method can also include a step 416 of displaying onthe graphical user interface an interface (e.g., smart channel editor)that is used to create a message using content from the segments of thetextual content that have been extracted from the one or more assets. Tobe sure, the message content created in the smart channel editorincludes either AI or user generated messages. In one or moreembodiments, the method can also include a step 418 of publishing themessage to one or more publishing targets.

FIG. 5 is a flowchart of another example method of the presentdisclosure. The method generally includes a step 502 of performingmachine learning on one or more assets having textual content in orderto determine relevant words, phrases, and statistics included in thetextual content, and generate a summary of the textual content. Themethod also includes a step 504 of displaying, on a graphical userinterface, segments of the textual content that have been extracted fromthe one or more assets based on selected ones of the relevant words, thephrases and the statistics.

The method further includes a step of 506 composing a message based onthe segments of the textual content that have been extracted from theone or more assets using machine learning. In some embodiments aninterface is presented that (e.g., smart channel editor) is used tocreate or edit an AI generated message prior to publishing.

FIG. 6 illustrates an example computer system 1 that can be utilized formachine learning for digital assets and message creation. That is, thecomputer system 1 can implement the AI/machine learning of the presentdisclosure.

The computer system 1, within which a set of instructions for causingthe machine to perform any one or more of the methodologies discussedherein may be executed. In various example embodiments, the machineoperates as a standalone device or may be connected (e.g., networked) toother machines. In a networked deployment, the machine may operate inthe capacity of a server or a client machine in a server-client networkenvironment, or as a peer machine in a peer-to-peer (or distributed)network environment. The machine may be a robotic construction markingdevice, a base station, a personal computer (PC), a tablet PC, a set-topbox (STB), a personal digital assistant (PDA), a cellular telephone, aportable music player (e.g., a portable hard drive audio device such asan Moving Picture Experts Group Audio Layer 3 (MP3) player), a webappliance, a network router, switch or bridge, or any machine capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that machine. Further, while only a singlemachine is illustrated, the term “machine” shall also be taken toinclude any collection of machines that individually or jointly executea set (or multiple sets) of instructions to perform any one or more ofthe methodologies discussed herein.

The example computer system 1 includes a processor or multipleprocessors 5 (e.g., a central processing unit (CPU), a graphicsprocessing unit (GPU), or both), and a main memory 10 and static memory15, which communicate with each other via a bus 20. The computer system1 may further include a video display 35 (e.g., a liquid crystal display(LCD)). The computer system 1 may also include an alpha-numeric inputdevice(s) 30 (e.g., a keyboard), a cursor control device (e.g., amouse), a voice recognition or biometric verification unit (not shown),a drive unit 37 (also referred to as disk drive unit), a signalgeneration device 40 (e.g., a speaker), and a network interface device45. The computer system 1 may further include a data encryption module(not shown) to encrypt data.

The drive unit 37 includes a computer or machine-readable medium 50 onwhich is stored one or more sets of instructions and data structures(e.g., instructions 55) embodying or utilizing any one or more of themethodologies or functions described herein. The instructions 55 mayalso reside, completely or at least partially, within the main memory 10and/or within the processors 5 during execution thereof by the computersystem 1. The main memory 10 and the processors 5 may also constitutemachine-readable media.

The instructions 55 may further be transmitted or received over anetwork via the network interface device 45 utilizing any one of anumber of well-known transfer protocols (e.g., Hyper Text TransferProtocol (HTTP)). While the machine-readable medium 50 is shown in anexample embodiment to be a single medium, the term “computer-readablemedium” should be taken to include a single medium or multiple media(e.g., a centralized or distributed database and/or associated cachesand servers) that store the one or more sets of instructions. The term“computer-readable medium” shall also be taken to include any mediumthat is capable of storing, encoding, or carrying a set of instructionsfor execution by the machine and that causes the machine to perform anyone or more of the methodologies of the present application, or that iscapable of storing, encoding, or carrying data structures utilized by orassociated with such a set of instructions. The term “computer-readablemedium” shall accordingly be taken to include, but not be limited to,solid-state memories, optical and magnetic media, and carrier wavesignals. Such media may also include, without limitation, hard disks,floppy disks, flash memory cards, digital video disks, random accessmemory (RAM), read only memory (ROM), and the like. The exampleembodiments described herein may be implemented in an operatingenvironment comprising software installed on a computer, in hardware, orin a combination of software and hardware.

Not all components of the computer system 1 are required and thusportions of the computer system 1 can be removed if not needed, such asInput/Output (I/O) devices (e.g., input device(s) 30). One skilled inthe art will recognize that the Internet service may be configured toprovide Internet access to one or more computing devices that arecoupled to the Internet service, and that the computing devices mayinclude one or more processors, buses, memory devices, display devices,input/output devices, and the like. Furthermore, those skilled in theart may appreciate that the Internet service may be coupled to one ormore databases, repositories, servers, and the like, which may beutilized in order to implement any of the embodiments of the disclosureas described herein.

Reference throughout this specification to “one embodiment” or “anembodiment” means that a particular feature, structure, orcharacteristic described in connection with the embodiment is includedin at least one embodiment of the present invention. Thus, theappearances of the phrases “in one embodiment” or “in an embodiment” or“according to one embodiment” (or other phrases having similar import)at various places throughout this specification are not necessarily allreferring to the same embodiment. Furthermore, the particular features,structures, or characteristics may be combined in any suitable manner inone or more embodiments. Furthermore, depending on the context ofdiscussion herein, a singular term may include its plural forms and aplural term may include its singular form. Similarly, a hyphenated term(e.g., “on-demand”) may be occasionally interchangeably used with itsnon-hyphenated version (e.g., “on demand”), a capitalized entry (e.g.,“Software”) may be interchangeably used with its non-capitalized version(e.g., “software”), a plural term may be indicated with or without anapostrophe (e.g., PE's or PEs), and an italicized term (e.g., “N+1”) maybe interchangeably used with its non-italicized version (e.g., “N+1”).Such occasional interchangeable uses shall not be consideredinconsistent with each other.

Also, some embodiments may be described in terms of “means for”performing a task or set of tasks. It will be understood that a “meansfor” may be expressed herein in terms of a structure, such as aprocessor, a memory, an I/O device such as a camera, or combinationsthereof. Alternatively, the “means for” may include an algorithm that isdescriptive of a function or method step, while in yet other embodimentsthe “means for” is expressed in terms of a mathematical formula, prose,or as a flow chart or signal diagram.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present disclosure has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the technology in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the technology. Exemplaryembodiments were chosen and described in order to best explain theprinciples of the present disclosure and its practical application, andto enable others of ordinary skill in the art to understand thetechnology for various embodiments with various modifications as aresuited to the particular use contemplated.

Aspects of the present disclosure are described above with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of thetechnology. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the technology.As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

It will be understood that like or analogous elements and/or components,referred to herein, may be identified throughout the drawings with likereference characters. It will be further understood that several of thefigures are merely schematic representations of the present disclosure.As such, some of the components may have been distorted from theiractual scale for pictorial clarity.

While the present disclosure has been described in connection with aseries of preferred embodiment, these descriptions are not intended tolimit the scope of the technology to the particular forms set forthherein. It will be further understood that the methods of the technologyare not necessarily limited to the discrete steps or the order of thesteps described. To the contrary, the present descriptions are intendedto cover such alternatives, modifications, and equivalents as may beincluded within the spirit and scope of the technology as defined by theappended claims and otherwise appreciated by one of ordinary skill inthe art.

What is claimed is:
 1. A method, comprising: receiving one or moreassets that comprise textual content; performing machine learning on theone or more assets in order to determine relevant words, phrases, andstatistics included in the textual content, and generating a summary ofthe textual content; receiving feedback from an editor with respect tothe summary; incorporating the feedback into the machine learning;automatically generating a message using the machine learning throughuse of a message creation ruleset; and displaying on a graphical userinterface: the relevant words, the phrases, and the statistics; segmentsof the textual content that have been extracted from the one or moreassets based on the relevant words, the phrases, and the statistics; andan interface that is used to create the message using content from thesegments of the textual content that have been extracted from the one ormore assets, wherein the machine learning applies natural languageprocessing rules to convert a run-on or a fragment, in at least one ofthe segments of the textual content, into a sentence.
 2. The methodaccording to claim 1, wherein the relevant words are displayed in afirst window of the graphical user interface and the phrases aredisplayed in a second window of the graphical user interface.
 3. Themethod according to claim 2, wherein the statistics are displayed in athird window, the segments are displayed in a fourth window, and theinterface is displayed in a fifth window.
 4. The method according toclaim 3, wherein the graphical user interface further comprises a sixthwindow that comprises the summary of the textual content.
 5. The methodaccording to claim 4, wherein the machine learning is configured togenerate relevancy scores for each of the segments based on a user'sselection of at least one of the relevant words, the phrases, and thestatistics.
 6. The method according to claim 5, wherein the machinelearning is configured to generate hashtags from the relevant words, thehashtags being displayed in the fourth window, further wherein thehashtags are incorporated into the message in the interface whenselected from the fourth window.
 7. The method according to claim 6,further comprising adding the message to a queue for distribution. 8.The method according to claim 1, further comprising: utilizing anapplication programming interface to search social networks for thirdparty content that match to the one or more assets; and incorporatingthe third party content with the one or more assets during the machinelearning such that the relevant words, the phrases, and the statisticsare based on both the one or more assets and the third party content. 9.The method according to claim 1, further comprising generating areal-time relevancy score that indicates how relevant the content of themessage is relative to a user's selections made through the graphicaluser interface.
 10. The method according to claim 1, wherein the machinelearning further creates ancillary or collateral content for use in themessage.
 11. A system, comprising: an asset analyzer module configuredto receive one or more assets that comprise textual content; a machinelearning module configured to: perform machine learning on the one ormore assets in order to determine relevant words, phrases, andstatistics included in the textual content, and generate a summary ofthe textual content; receive feedback from an editor with respect to thesummary; incorporate the feedback into the machine learning; andautomatically generate a message using the machine learning through useof a message creation ruleset; and a graphical user interface moduleconfigured to display on a graphical user interface: the relevant words,the phrases, and the statistics; segments of the textual content thathave been extracted from the one or more assets based on the relevantwords, the phrases, and the statistics; and an interface that is used tocreate the message using content from the segments of the textualcontent that have been extracted from the one or more assets, whereinthe machine learning applies natural language processing rules toconvert a run-on or a fragment, in at least one of the segments of thetextual content, into a sentence.
 12. The system according to claim 11,wherein the relevant words are displayed in a first window of thegraphical user interface and the phrases are displayed in a secondwindow of the graphical user interface.
 13. The system according toclaim 12, wherein the statistics are displayed in a third window, thesegments are displayed in a fourth window, and the interface isdisplayed in a fifth window.
 14. The system according to claim 13,wherein the graphical user interface further comprises a sixth windowthat comprises the summary of the textual content.
 15. The systemaccording to claim 14, wherein the machine learning module is furtherconfigured to generate relevancy scores for each of the segments basedon a user's selection of at least one of the relevant words, thephrases, and the statistics.
 16. The system according to claim 15,wherein the machine learning module is further configured to generatehashtags from the relevant words, the hashtags being displayed in thefourth window, further wherein the hashtags are incorporated into themessage in the interface when selected from the fourth window.
 17. Thesystem according to claim 16, wherein the graphical user interfacemodule is further configured to add the message to a queue fordistribution.
 18. The system according to claim 17, wherein the assetanalyzer module is further configured to: utilize an applicationprogramming interface to search social networks for third party contentthat match to the one or more assets; and incorporate the third partycontent with the one or more assets during the machine learning suchthat the relevant words, the phrases, and the statistics are based onboth the one or more assets and the third party content.
 19. The systemaccording to claim 18, wherein the machine learning module furtherutilizes native knowledge regarding a site to which the message will bepublished in order to reformat a segment of the textual content.
 20. Amethod, comprising: performing machine learning on one or more assetshaving textual content in order to determine relevant words, phrases,and statistics included in the textual content, and generate a summaryof the textual content; displaying, on a graphical user interface,segments of the textual content that have been extracted from the one ormore assets based on the relevant words, the phrases, and thestatistics, and an interface that is used to create a message usingcontent from the segments of the textual content that have beenextracted from the one or more assets; receiving feedback from an editorwith respect to the summary; incorporating the feedback into the machinelearning; automatically generating the message using the machinelearning through use of a message creation ruleset; and applying naturallanguage processing rules by the machine learning to convert a run-on ora fragment, in at least one of the segments of the textual content, intoa sentence.
 21. The method of claim 20, further comprising reformattinga segment by the machine learning utilizing native knowledge regarding asite to which the message will be published.